This disclosure relates generally to the field of image processing. More particularly, but not by way of limitation, it relates to techniques for creating a novel chromaticity space that may be used as a framework to perform color balancing on images captured by a variety of different image sensors.
Color balancing may be thought of as the global adjustment of the colors in an image. One goal of color balancing is to render specific colors, e.g., neutral white, as accurately as possible to the way the color appeared in the actual physical scene from which the image was captured. In the case of rendering neutral white colors correctly, the process is often referred to as “white balancing.” Most digital cameras base their color balancing and color correction decisions at least in part on the type of scene illuminant. For example, the color of a white sheet of paper will appear differently under fluorescent lighting than it will in direct sunlight. The type of color correction to be performed may be specified manually by a user of the digital camera who knows the scene illuminant for the captured image, or may be set programmatically using one or more of a variety of automatic white balance (AWB) algorithms.
Chromaticity, as used herein, will refer to an objective specification of the quality of a color—independent of its luminance. Once luminance has been removed from consideration, the remaining components of a color can be defined by a pair of variables in a two-dimensional space. This is useful, as it allows the “chromaticity space” to be mapped into a 2D graph where all existing colors may be uniquely identified by an x-y coordinate position in the chromaticity space. Among the well-known chromaticity spaces are the a-b space of the CIELAB color space and the u-v space in CIELUV color space.
Generally, the definition of such a color space is not application-dependent, although color spaces may be created for a particular application. For example, the novel chromaticity space disclosed herein may be applied, in one embodiment, to scene white point calculation. Novel chromaticity spaces, such as those disclosed herein, were designed to work with different imaging sensors having different spectral sensitivity responses. One property of such novel chromaticity spaces is that various “physical” properties of the chromaticity spaces are able to remain consistent across imaging sensors having various spectral sensitivity responses. However, the parameters of the calculations used to transform the image data into such chromaticity spaces may be adaptive from sensor to sensor. Accordingly, the disclosed techniques provide a series of transformations to define a novel chromaticity space that is conceptually sound and computationally efficient, e.g., when used to calculate scene white point.